<?xml version="1.0"?>
<!--
  ~ Copyright 2004-2012 ICEsoft Technologies Canada Corp.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the
  ~ License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an "AS
  ~ IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  ~ express or implied. See the License for the specific language
  ~ governing permissions and limitations under the License.
  -->

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:c="http://java.sun.com/jsp/jstl/core" 
    xmlns:ace="http://www.icefaces.org/icefaces/components" 
    xmlns:ice="http://www.icesoft.com/icefaces/component"
    xmlns:icecore="http://www.icefaces.org/icefaces/core"
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    template="/resources/templates/content-template.xhtml">
    
    <ui:param name="title" value="#{msgs[eventphase.title]}"/>
    <ui:param name="description" value="#{msgs[eventphase.description]}"/>
    <ui:param name="resourceValue" value="#{eventphase.exampleResource}"/>
    
    <ui:param name="wikiResources" value="#{compatComponentsResources.wikiResources}"/>
    <ui:param name="tldResources" value="#{compatComponentsResources.tldResources}"/>
    
    <ui:define name="example">
        <h:form>
            <icecore:singleSubmit/>
            <h:panelGrid columns="3">
                <h:outputLabel for="enableIn" value="Enable Set Event Phase?"/>
                <h:selectBooleanCheckbox id="enableIn" value="#{eventphase.enable}"/>
                <h:message for="enableIn"/>
            </h:panelGrid>
        </h:form>
        
        <hr width="100%"/>
    
        <h:form>
            <h:panelGrid columns="2"
                         columnClasses="col50,col50"
                         width="90%">
                <h:panelGrid columns="3"
                             columnClasses="col25,col75"
                             width="100%">
                    <h:outputLabel for="provinceIn" value="Province:"/>
                    <ice:setEventPhase events="ValueChangeEvent"
                                       phase="INVOKE_APPLICATION"
                                       disabled="#{!eventphase.enable}">
                        <h:selectOneListbox id="provinceIn"
                                            value="#{eventphase.province}"
                                            valueChangeListener="#{eventphase.provinceChanged}"
                                            required="true"
                                            style="width: 100%;">
                            <f:selectItems value="#{eventphase.availableProvinces}"/>
                        </h:selectOneListbox>
                    </ice:setEventPhase>
                    <h:message for="provinceIn"/>
                    
                    <h:outputLabel for="provinceOut" value="Selected:"/>
                    <h:outputText id="provinceOut" value="#{eventphase.province}"
                                  style="font-weight: bold;"/>
                    <h:outputText/>
                </h:panelGrid>
                
                <h:panelGrid columns="3"
                             columnClasses="col25,col75"
                             width="100%">
                    <h:outputLabel for="cityIn" value="City:"/>
                    <ice:setEventPhase events="ValueChangeEvent"
                                       phase="INVOKE_APPLICATION"
                                       disabled="#{!eventphase.enable}">
                        <h:selectOneListbox id="cityIn"
                                            value="#{eventphase.city}"
                                            valueChangeListener="#{eventphase.cityChanged}"
                                            required="true"
                                            style="width: 100%;">
                            <f:selectItems value="#{eventphase.availableCities}"/>
                        </h:selectOneListbox>
                    </ice:setEventPhase>
                    <h:message for="cityIn"/>
                    
                    <h:outputLabel for="cityOut" value="Selected:"/>
                    <h:outputText id="cityOut" value="#{eventphase.city}"
                                  style="font-weight: bold;"/>
                    <h:outputText/>
                </h:panelGrid>
                
                <f:facet name="footer">
                    <center>
                        <h:commandButton value="Submit"/>
                    </center>
                </f:facet>
            </h:panelGrid>
        </h:form>
        
        <br/>
        
        <h:form>
            <h:dataTable value="#{eventphase.eventLog}"
                         var="event"
                         style="border: 1px solid #CDCDCD; padding: 10px;"
                         width="100%" cellspacing="0" cellpadding="2"
                         rows="#{eventphase.logSize}">
                 <h:column>
                     <f:facet name="header">
                        Event Log
                     </f:facet>
                     #{event}
                 </h:column>
            </h:dataTable>
        </h:form>
    </ui:define>
</ui:composition>
